package jdk8.method.reference.demo03.objectX.staticX.method.reference;

/**
 * 通过对象名引用静态成员方法
 *
 **/
public class Demo {
    // 方法定义: 参数传递要计算绝对值的整数, 及函数式接口
    public static int getAbs(int number, Calcable c) {
        return c.calsAbs(number);
    }


    public static void main(String[] args) {
        // 传递计算需要计算绝对值的整数和Lambda
        int abs = getAbs(-10,number -> {
            return Math.abs(number);
        });

        System.out.println(abs);

        /**
         * 方法引用优化Lambda
         * 类存在, 静态方法存在, 可以引用
         */
        int abs2 = getAbs(-10, Math::abs);
        System.out.println(abs2);

    }
}
